package com.nl.lib_core

import android.app.Application
import com.alibaba.android.arouter.launcher.ARouter
import com.nl.lib_core.tool.log.KLog

/** 作者: wangfei 创建时间: 2021/8/31 包名: com.nl.lib_core 类名: BaseApplication */
open class BaseApplication : Application() {

  companion object {
    var instance: BaseApplication? = null
      private set
  }


  override fun onLowMemory() {
    super.onLowMemory()
  }

  override fun onCreate() {
    super.onCreate()
    KLog.init(BuildConfig.IS_DEBUG)
    instance = this
    // 这两行必须写在init之前，否则这些配置在init过程中将无效
    if (BuildConfig.IS_DEBUG) {
      // 开启调试模式(如果在InstantRun模式下运行，必须开启调试模式！线上版本需要关闭,否则有安全风险)
      ARouter.openDebug()
      // 打印日志
      ARouter.openLog()
    }
    ARouter.init(this)
  }

  override fun onTerminate() {
    super.onTerminate()
    ARouter.getInstance().destroy()
  }
}
